package com.lap.codegen.domain;

import lombok.Getter;
import lombok.Setter;

import java.util.LinkedList;
import java.util.List;
import java.util.Properties;

/**
 * <pre>
 * 提供生成代码的上下文,包括文件路径,基本的配置文件等
 * </pre>
 */
@Setter
@Getter
public class CodeContext {
    /**
     * xml文件源文件
     */
    private Properties properties;
    /**
     * 基础配置
     */
    private Conf conf;
    /**
     * 数据库配置
     */
    private DbConf db;
    /**
     * 类扩展配置,比如类的前缀后缀
     */
    private ExtConf ext;
    /**
     * 项目代码包配置
     */
    private PackageConf packageConf;
    /**
     * 框架配置
     */
    private FrameConf frame;
    /**
     * 表信息
     */
    private List<Table> tableList;
    /**
     * 文件内容
     */
    private List<CoreFile> fileList = new LinkedList<>();

}
